package com.h3c.ptability.entity;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.h3c.ptability.enums.NeedSignEnum;
import com.h3c.ptability.support.PtEsignTemplateParam;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.*;

/**
 * 电子签doc文件模板实体类
 *
 * @author chenyifan
 * @since 2022-05-19 10:46:25
 */
@Data
@TableName(value = "pt_esign_doc_template",autoResultMap = true)
public class PtEsignDocTemplate {
    /**
     * 电子签word模板ID
     */
    @TableId
    private String templateId;
    /**
     * 应用ID
     */
    private String appId;
    /**
     * 文件类型：1 导入模板；2 页面编辑的模板；
     */
    private String docType;
    /**
     * 电子签word模板文件SFS文档ID
     */
    private String docId;
    /**
     * 模板文件
     */
    private byte[] docFile;
    /**
     * 通过系统维护的文档内容
     */
    private String docContent;
    /**
     * word模板文件名称
     */
    private String docName;
    /**
     * 电子签变量json数组
     */
    @TableField(typeHandler = FastjsonTypeHandler.class)
    private List<PtEsignTemplateParam> docVariables;
    /**
     * 创建人工号
     */
    @TableField(fill = FieldFill.INSERT)
    private String createBy;
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * 更新人工号
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
    /**
     * 需要用户签署 0不需要 1需要
     */
    private NeedSignEnum needUserSign;
    /**
     * 需要公司签署 0不需要 1需要
     */
    private NeedSignEnum needOrgSign;
    /**
     * 文件说明
     */
    private String templateDescribe;
}

